PgBouncer 通用选项
1 pidfile
指定pidfile 路径。
2 listen_addr
1、指定 pgbouncer 的监听地址。
2、*
表示在所有监听网卡上监听。
3 listen_port
1、指定监听端口。
2、默认为:6432。
4 unix_socket_dir
1、指定 Unix 套接字的位置。
2、默认在 /tmp
目录下。
5 unix_socket_mode
1、指定套接字文件的权限。
6 unix_socket_group
指定套接字的文件的属主和属组。
7 user
指定使用哪个操作系统用户启动 pgbouncer 。
8 pool_mode
指定服务器的连接模式。
1、session: 客户端断开连接后,服务器将释放对应会话资源。这是默认行为。
2、transaction: 当事务结束后,服务器将释放对应会话资源。
3、statement: 当某个语句结束后,服务器将释放对应会话资源。
9 max_client_conn
pgbouncer 的最大连接数。默认为100 。
1、增大该值时,对应的操作系统文件描述符也要增加。
2、当每个用户都以自己的用户连接服务器,则理论上最大使用量为:max_client_conn
。
max_client_conn + (max pool_size * total databases * total users)
3、如果在连接字符串中设置了数据库用户,即所有的用户都以相同的数据库用户连接时,则理论最大值为:
max_client_conn + (max pool_size * total databases)
10 default_pool_size
1、每个用户/数据库能够允许多少个服务器连接。
2、默认为:20
11 min_pool_size
1、如果服务器连接低于此值,则向数据库添加更多连接。
2、适用于数据库不活动一段时间后突然恢复,可以提高一定的性能。
3、默认值为:0 。
12 reserve_pool_size
1、允许保留多少个额外的连接池。更多信息请参考 [[#2.2.13 reserve_pool_timeout]]
2、默认值为:0 。
13 reserve_pool_timeout
1、如果客户端请求连接多少秒之内没有得到服务,则使用备用池的连接。更多信息参考 [[#2.2.12 reserve_pool_size]]。
2、默认值为:5.0 ,单位为秒。
14 max_db_connections
1、连接到 pg_bouncer 的数据库的最大连接数限制。
这里指的是 pg_bouncer 的数据库,而不是 PostgreSQL 的数据库。
2、到了最大限制时,需要注意,只有连接池的客户端连接关闭时,才能为新客户端打开一个新的连接。
3、默认值:0 (unlimited)不限制。
14.1.1 max_user_connections
1、连接到 pg_bouncer 的用户的最大连接数限制。
这里指的是 pg_bouncer 的用户,而不是 PostgreSQL 的用户。
2、到了最大限制时,需要注意,只有连接池的客户端连接关闭时,才能为新客户端打开一个新的连接。
3、默认值:0 (unlimited)不限制。